Proximity selector

ABSTRACT

A proximity selection feature of a content creation and consumption application for selecting proximate content displayed by a computing device is described. The content application can initiate a selection mode in response to receiving, for example, a command to enter the selection mode or a defined gesture. The content application can identify an origination point and surface a two-dimensional selection shape anchored to the origination point. The selection shape may form an original capture area. The origination point is a location on a user interface where the selection shape is to be surfaced, anchored to, and have a capture area expanded from. After surfacing the selection shape, the content application can receive indicia of expansion, and based on the indicia of expansion, expand the selection shape from its original capture area to an expanded capture area to capture content proximate the original capture area.

BACKGROUND

The collaboration, creating, and editing of content through contentcreation and consumption applications can be conducted in many differentsettings, such as classrooms, meetings, seminars, and conferences. Usersof such applications utilize different resources to display the content.One resource includes large screen digital devices, such as interactivewhiteboards.

However, the collaboration, creating, and editing of content on largescreen digital devices can be challenging. Often, users want to selectgroups of items that are located close to each other, but not close tothe location of the user, resulting in the user having to perform largearm movements or walk across to the other side of the large screendigital device in order to select the content.

BRIEF SUMMARY

A proximity selection feature of a content creation and consumptionapplication (“content application”) for selecting proximate contentdisplayed by a computing device is described. The proximity selectionfeature can capture proximate content starting at an origination point.

The content application can initiate a selection mode in response toreceiving, for example, a command to enter the selection mode or adefined gesture. The content application can identify an originationpoint and surface a selection shape anchored to the origination point.The origination point is a location on a user interface where atwo-dimensional selection shape is to be surfaced, anchored to, and havea capture area expanded from. The selection shape forms an originalcapture area. After surfacing the selection shape, the contentapplication can receive indicia of expansion, and based on the indiciaof expansion, expand the selection shape from its original capture areato an expanded capture area to capture content proximate the originalcapture area. Additionally, the content application can receive indiciaof contraction, and based on the indicia of contraction, contract theselection shape to remove content from the captured content area.

The content application may provide an identifier for the capturedcontent, which may be a modification to the captured content. Themodification can include highlighting the captured content or changing aproperty of the captured content, such as color or size. In some cases,alternatively or in addition to the modification of the capturedcontent, a box surrounds the captured content. Further, once “captured”,the captured content may be manipulated, for example, by moving,rotating, or scaling the captured content.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A and 1B illustrate example operating environments in whichvarious embodiments of the invention may be carried out.

FIG. 2 illustrates an example process flow diagram of a method forselecting proximate content.

FIG. 3 illustrates an example representation of selecting proximatecontent.

FIG. 4 illustrates an example representation of expansion using anindicator handle.

FIGS. 5A-5F illustrate example representations of selection shapes thatmay be used to implement certain methods and services described herein.

FIGS. 6A-6D illustrate example scenarios of selecting proximate content.

FIGS. 7A-7E illustrate example scenarios of selecting proximate content.

FIG. 8 illustrates components of a computing device or system that maybe used in certain embodiments described herein.

DETAILED DESCRIPTION

A proximity selection feature of a content creation and consumptionapplication (“content application”) for selecting proximate contentdisplayed by a computing device is described. The proximity selectionfeature can capture proximate content starting at an origination point.

The proximity selection feature may allow a user to quickly and easilyidentify a zone that emanates from the origination point to select itemsthat are located close together spatially. The proximity selectionfeature is beneficial for the selection of items on large screen digitaldevices, such as an interactive whiteboard, as there is a large areawhere content can be displayed. Because of the large form factor, it canbe desirable to have a feature that allows the user to select contentfar away without physically having to walk over to the content or reachthe content. For example, a user may be too short to reach the top ofthe device or may be in a wheelchair.

The described invention relates to the ability to select an area on auser interface and identify content within that area. The proximityselection feature evaluates the distance from the selection point toidentify proximate content. Through the described proximity selectionfeature, the user can select content that is being displayed separatefrom where the user is interacting with the user interface withouthaving to move their body away from their position. The proximityselection feature can select content that is located close togetherspatially via a selection shape. The proximity selection feature canthen expand the selection shape to continue to select proximate content,including content far away from the position of the user.

The described proximity selection feature is suitable for contentcreation and consumption applications that support a variety ofdifferent types of content, such as, but not limited to, digital ink,text, graphics, and images. The user interactions with the contentcreation and consumption application may be performed via a stylus, pen,user finger, or mouse, or other user interface device.

Digital ink refers to the mode of user input where a stylus or pen (oreven user finger of a touchscreen or pad) is used to capture handwritingin its natural form. Digital ink strokes are markings that arerepresented by a set of properties and point data that a digitizercaptures.

Content creation and consumption applications are software applicationsin which users can contribute, consume, and/or modify content. Thecontent can be visual content where users can create text and/orimage-based content in digital form. The content creation andconsumption application may include a reader application and/or aneditor application. The term “content creation and consumptionapplication” may in some cases be synonymous with “content authoringapplication”, “productivity application”, or “content authoring tool”,and such terms may be used interchangeably herein.

A large screen display refers to a large output device for presentationof information in visual or tactile form. The large screen display canbe a standalone computing device or a large touchpad display for aseparate computing device.

An interactive whiteboard is one example of a large screen interactivedisplay with a form factor of a whiteboard. The interactive whiteboardmay be used in a variety of settings, such as classrooms and corporateenvironments.

The terms “captured” and “selected” are used interchangeably herein.

The content application can initiate a selection mode in response toreceiving, for example, a command to enter the selection mode or adefined gesture. The content application can identify an originationpoint and surface a selection shape anchored to the origination point.The origination point is a location on a user interface where thetwo-dimensional selection shape is to be surfaced, anchored to, and havea capture area expanded from. The surfaced selection shape forms anoriginal capture area. After surfacing the selection shape, the contentapplication can receive indicia of expansion, and based on the indiciaof expansion, expand the selection shape from its original capture areato an expanded capture area to capture content proximate the originalcapture area. Additionally, the content application can receive indiciaof contraction, and based on the indicia of contraction, contract theselection shape to remove content from the captured content area.

The content application may provide an identifier that identifies thecontent that has been captured. The identifier may be a modification tothe captured content. The modification can include highlighting thecaptured content or changing a property of the captured content, such ascolor or size. In some cases, alternatively or in addition to themodification of the captured content, a box surrounds the capturedcontent. Once “captured” by being within a captured content area, thecaptured content may be manipulated, for example, by moving, rotating,deleting, adjusting formatting, or scaling the captured content.

FIGS. 1A and 1B illustrate example operating environments in whichvarious embodiments of the invention may be carried out. Referring toFIG. 1A, a user 102 may be collaborating, creating, or editing contenton a computing device, such as an interactive whiteboard 104 in avariety of settings, such as a classroom or corporate environment. Theinteractive whiteboard 104 may be embodied as system 800 such asdescribed with respect to FIG. 8.

In one example, the user 102 may be a teacher using the interactivewhiteboard 104 in a classroom setting. In another example, the user 102may be using the interactive whiteboard 104 in a corporate setting, suchas during a meeting, conference, or seminar. The user interface (“UI”)106 can refer to the graphical user interface through which contentappears to be created, conceptually being a substrate for a work ofauthorship. The user 102 may manipulate a selection shape 107 surfaced(or rendered) on the UI 106 to select content that is separate fromwhere the user 102 is interacting with the UI 106. For example, the user102 can perform a single-handed user interaction, such as a gesture ormultiple finger gesture, with the UI 106 that allows the user 102 toselect content that the user 102 cannot reach.

The user 102 may press and hold a point on the UI 106, such asorigination point 108. The origination point 108 is the point at whichthe selection shape 107 is to be surfaced, anchored to, and have acapture area expanded from. As the user 102 holds down on theorigination point, the capture area of the selection shape 107 canexpand outward to select content. In some cases, any content within theselection shape 107 may be selected. In other cases, the selection shape107 may be segmented into zones and the user 102 can tap in one of thezones to select content. A shaded area 109 may be provided within theselection shape 109 to identify selected content. In this case, a usermay modify the shaded area 109 using a variety of touch gestures, suchas a tap, a drag, or a slide, and any content within the shaded area 109may be selected.

The proximity selection feature can be a standalone application or aproximity selection feature of the content application to provide thefunctionality within the content application.

Referring to FIG. 1B, a user 105 may interact with a user computingdevice 110 running application 112, such as a content application,through a UI 114 displayed on a display 116 associated with thecomputing device 110.

A computing device (e.g., the user computing device 110) is configuredto receive input from a user (e.g., user 105) through, for example, akeyboard, mouse, trackpad, touch pad, touch screen, microphone, or otherinput device. The display 116 of the user computing device 110 isconfigured to display one or more user interfaces (including UI 114) tothe user 105. In some embodiments, the display 116 can include atouchscreen such that the user computing device 110 may receive userinput through the display. In some cases, the display 116 is a largescreen display.

The UI 114 enables a user to interact with various applications, such asthe content application, running on or displayed through the usercomputing device 110. Generally, UI 114 is configured such that a usermay easily interact with functionality of an application. For example, auser may simply select (via, for example, touch, clicking, gesture orvoice) an option within UI 114 to perform an operation such as selectingcontent being authored or edited in an application 112.

The user 105 can execute numerous commands through the UI 114 in orderto perform specific tasks related to features available in theapplication 112. In some cases, the user 105 may have multiple devicesrunning a similar program and the user 105 can edit a same or differentdocument (or other content) across multiple user computing devices (suchas second device 118-1 and/or third device 118-2).

The user computing device 110 (as well as the second device 118-1 andthe third device 118-2) may operate on or in communication with anetwork 120, and may communicate with one or more servers 130 over thenetwork 120.

The network 120 can be, but is not limited to, a cellular network (e.g.,wireless phone), a point-to-point dial up connection, a satellitenetwork, the Internet, a local area network (LAN), a wide area network(WAN), a WiFi network, an ad hoc network or a combination thereof. Suchnetworks are widely used to connect various types of network elements,such as hubs, bridges, routers, switches, servers, and gateways. Thenetwork 120 may include one or more connected networks (e.g., amulti-network environment) including public networks, such as theInternet, and/or private networks such as a secure enterprise privatenetwork. Access to the network 120 may be provided via one or more wiredor wireless access networks as will be understood by those skilled inthe art.

As will also be appreciated by those skilled in the art, communicationnetworks can take several different forms and can use several differentcommunication protocols. Certain embodiments of the invention can bepracticed in distributed-computing environments where tasks areperformed by remote-processing devices that are linked through acommunications network. In a distributed-computing environment, programmodules can be located in both local and remote computer-readablestorage media.

The user computing device 110 can be, but is not limited to, a personalcomputer (e.g. desktop computer), laptop, personal digital assistant(PDA), video game device, mobile phone (or smart phone), tablet, slate,terminal, an interactive whiteboard, and the like. It should be apparentthat the user computing device 110 may be any type of computer systemthat provides its user the ability to load and execute software programsand the ability to access a network, such as network 120. The seconddevice 118-1 and third device 118-2 may include the same types ofdevices (or systems) as user computing device 110 and they may or maynot be of a same form. For example, a user 105 may have a laptop, atablet, and a smart phone as the three devices.

The application 112 can be stored on the user computing device 110(e.g., a client-side application). In another embodiment, the user 105may access a web-based application 132 (e.g., running on server 130 orhosted on a cloud) using a web browser (e.g., a standard internetbrowser), and the application's interface may be displayed to the user105 within the web browser. Thus, the application may be a client-sideapplication and/or a non-client side (e.g., a web-based) application.

FIG. 2 illustrates an example process flow diagram of a method forselecting proximate content; and FIG. 3 illustrates an examplerepresentation of selecting proximate content. Referring to FIG. 2, acontent application performing process 200 via a proximity selectionfeature, can be implemented by a user device, which can be embodied asdescribed with respect to computing system 800 shown in FIG. 8.

The content application can initiate a selection mode (205). Theselection mode can be initiated in response to receiving a variety ofuser interactions with the UI, such as, but not limited to, receiving acommand to enter selection mode or receiving a defined gesture. Aspreviously described, the user interactions with the UI may beaccomplished via input mechanisms of a stylus, pen, or finger (on atouch screen or pad).

In the case of receiving a command to enter selection mode, the contentapplication may receive a selection of a selection icon. The selectionicon may be displayed at any location on the UI, such as a tool bar ofthe content application.

In the case of receiving a defined gesture, one example of receiving thedefined gesture includes an encircling and a context menu selection (seee.g., scenario shown in FIGS. 7A and 7B). In this example, a user maydraw a circle on the UI in digital ink. The content application can thendisplay a context menu that includes a selection icon. The selectionicon may ask the user if they would like to enter selection mode. If theuser selects the selection icon, the content application can initiatethe selection mode. If, after a period of time, the user does not selectthe selection icon, the content application will not initiate theselection mode and the circle will remain digital ink.

In another example of receiving the defined gesture, the defined gestureincludes a tap and hold touch gesture. In this case, a user may tap andhold a point on the UI for a period of time. If the period of time isgreater than a selection time threshold used by the application toidentify whether the gesture corresponds to a command to initiateselection mode, then the content application can initiate the selectionmode.

Once the content application initiates the selection mode (205), thecontent application can then identify an origination point (210) andsurface the selection shape anchored to the origination point (215). Theorigination point is a location on the UI where a two-dimensionalselection shape is to be surfaced, anchored to, and have a capture areaexpanded from. The origination point may be any point on the UI. Theorigination point does not have to be a location on the UI that includescontent. The origination point may not be near content, but once theselection shape is surfaced, the selection shape may be expanded tocover some or all of the content.

In some cases, the origination point can be a default origination point.For example, the origination point may be the same location any time theselection mode is initiated. In other cases, the origination point maybe a location at which the content application received the userinteraction with the UI. For example, the origination point may be thelocation at which the user performed the tap and hold defined touchgesture.

Additionally, the selection shape can be a variety of two dimensionalshapes, as will be discussed in more detail. The selection shape may besegmented into one or more sections (e.g., zones). The variety of shapesavailable for the selection shape may allow flexibility with thecustomization of the zones. For example, a rectangular selection shapemay allow individual lines of content to be selected easily.

Further, the surfaced selection shape forms an original capture area.The selection shape may be moved to different locations on the UI. Forexample, the selection shape may be moved near content or to covercontent within the original capture area on the UI. In another example,the selection shape may be moved to a bottom corner of the display tomore easily select all the content on the display. Any time theselection shape is moved, the content application identifies a neworigination point in which to anchor the selection shape.

Referring to FIG. 3, as illustrated at block 302, a user may use astylus 304 to perform a defined gesture (e.g., tap and hold 305 touchgesture) on a point 306 of the UI. When the content application receivesthis defined gesture, the content application can initiate the selectionmode. In this case, the content application can identify the point 306as being the origination point (e.g., origination point 311 at block308). At block 308, the content application can surface the selectionshape 310 anchored to the origination point 311.

Referring back to FIG. 2, after the content application has surfaced theselection shape anchored to the origination point (215), the contentapplication can receive indicia of expansion; and based on the indiciaof expansion, can expand the selection shape from its original capturearea to an expanded capture area to capture content proximate to theoriginal capture area (220). The indicia of expansion can comprise, forexample, one or more of a time of a hold, a location of a tap, and adirection of a drag. The indicia of expansion may be received through avariety of user interactions with the UI, such as, but not limited to, atap control, a drag control, and a slide control.

Referring again to FIG. 3, there are three examples shown for expansionof selection shape 310. In block 312, the selection shape 310 a mayinclude one or more indicator handles (e.g., indicator handle 314 a andindicator handle 314 b). The indicator handles may be any shape and mayallow the user to control the expansion and contraction of the selectionshape 310 a. In this example, the user may drag and hold (318) theindicator handle 314 b in the direction of the desired expansion. Basedon the direction of the drag and the time of the hold, the selectionshape 310 a can continue to expand in the direction of the drag untilthe user releases the hold. Advantageously, the user may only need todrag the indicator handle 314 b a short distance. This allows a user tostand at one end of a large screen display, and without having to walkto the other end or perform large arm movements, expand the selectionshape 310 a to capture content that is located on the other end of thelarge screen display by performing a short drag gesture.

In some cases, the indicator handles may be omitted from the selectionshape 310 a. The indicator handles may be located adjacent the selectionshape 310 a or omitted entirely and the expansion and contraction becontrolled by gestures not having visual indicators. For example, a userinteraction may be a swipe gesture on the selection shape 310 a or nearthe selection shape 310 a and the content application will understandthat a selection/expansion/contraction is desired. For example, the usermay make a drag and hold gesture near the selection shape 310 a and thecontent application will still receive the indicia of expansion.

In another example not shown in FIG. 3, the user may drag an edge of theselection shape 310 to expand to capture desired content. As the userdrags the edge of the selection shape 310 in a direction of the desiredcontent, the selection shape 310 may grow and expand until the userstops the drag gesture.

Returning to FIG. 3, in block 320, the user may tap and hold (324) apoint on or near the selection shape 310 b, such as the originationpoint 311. Based on the time of the hold, the selection shape 310 b cancontinue to expand from its original capture area to an expanded capturearea until the user releases the hold. The selection shape 310 b mayexpand in a variety of directions. In some cases, the direction of theexpansion may depend on the shape of the selection shape 310 b. Forexample, selection shape 310 b is in the shape of a sector of a circleand can continue to expand outward from the origination point 311.Advantageously, for this user interaction, the user only needs to tapand hold one point on the UI. This allows the user to stand at one endof a large screen display, and without having to walk to the other endor perform large arm movements, expand the selection shape 310 b tocapture content that is located on the other end of the large screendisplay.

In block 330, the selection shape 310 c may cover a large area of the UIand may be sectioned into several zones (e.g., zone 332 a, zone 332 b,zone 332 c, zone 332 d, zone 332 e, and zone 332 f). The user can tap(336), or perform some other action to indicate a location of aselection of a zone, in one or more of the zones (e.g., zone 332 e) ofthe selection shape 310 c. In this example, the content applicationreceives the location of the tap. Then, based on the location of thetap, the selection shape 310 c can expand a shaded area 338 of theselection shape 310 c to capture content within all the zones up to andincluding the zone the user performed the tap (e.g., zone 332 a, zone332 b, zone 332 c, zone 332 d, and zone 332 e).

Further, the user may tap in an area outside of the selection shape. Inthis case, additional zones may be added based on the location of thetap to expand the selection shape to allow the content near the locationof the tap to be captured.

Additionally, the user may also tap on content outside of the selectionshape. In some cases, the selection shape will expand to capture thecontent at the location of the tap. In other cases, the contentapplication may, based on the location of the tap, expand the selectionshape from its original capture area to an expanded capture area tocapture the selected objected, as well as any objects near the locationof the tap. Also, specific content may be selected or deselected by theuser. For example, when the content application has identified groupingsof ink strokes, each grouping may be selected or deselected by the user.In this example, if the selection shape is expanded to capture morecontent than the user intended, the user may tap on the grouping thatthey would like deselected and that grouping will not be included in thecaptured content.

In some cases, the captured content may include only the content thatthe selection shape completely covers within the original capture areaor the expanded capture area. For example, a user may write one or morewords on the UI, such as “Math 101”. If, when the selection shape isexpanded, the expanded capture area of the selection shape only coversand selects the word “Math,” the captured content may only include“Math” and not the whole phrase, “Math 101.”

In other cases, the captured content may include more than the contentthat is completely covered by the original capture area of the selectionshape or the expanded capture area of the selection shape. In anexample, the content application may include an ink analyzer. An inkanalyzer is a feature that analyzes the ink strokes and identifies inkedterms and other recognizable groupings of ink strokes. A grouping of inkstrokes that are identified as forming a drawn unit (e.g., term ordrawing) can be considered stored within a data structure of an inkcontainer.

In this case, as soon as any part of an identified grouping is selectedor covered by one of the capture areas of the selection shape, the wholegrouping may be selected. For example, if the content application hasidentified the word “apple” as a grouping and only the letters “ap” areselected (covered by the selection shape) during the expansion of theselection shape, the content application may include the whole word“apple” as the captured content. In another example, the identifiedgrouping may be “Math 101.” If only the word “Math” is selected duringthe expansion of the selection shape, the content application caninclude the whole phrase “Math 101” as the captured content.

The content application may perform a proximity calculation to identifywhat content to capture. In this case, any content within a proximitydistance threshold of the selection shape may be selected. The proximitycalculation may be used in the case where the content application doesnot include an ink analyzer to identify groupings. For example, a letterin a word may not have been included in the selection, but may have beenintended to be included. The proximity calculation may be used toidentify that the letter is close enough to the rest of the letters inthe word that has been selected. Therefore, the content application cancapture the whole word instead of only a part of the word.

The captured content may be distinguished from the rest of the contentin a variety of ways. In some cases, an identifier for the capturedcontent may be provided. The identifier may modify the captured content,for example, by highlighting the captured content or changing a propertyof the captured content, such as color or size.

The selection shape may include a shaded area to indicate what contenthas been captured. The shaded area may cover the selected content anddoes not have to be the same size as the selection shape. For example,the selection shape may include several zones and the shaded area of theselection shape may only include some of those zones.

In addition to the indicia of expansion, the content application canreceive indicia of contraction; and based on the indicia of contraction,can contract the selection shape to remove content from the capturedcontent. The indicia of contraction can also comprise, for example, oneor more of a time of a hold, a location of a tap (or other gestureindicating location of a selection of a zone), and a direction of a dragand may be received through a variety of user interactions with the UI,such as, but not limited to, a tap control, a drag control, and a slidecontrol.

Further, once the selection shape has been expanded to capture thecontent, the captured content may be manipulated. For example, thecaptured content may be moved, rotated, or scaled.

FIG. 4 illustrates an example representation of expansion using anindicator handle. Referring to FIG. 4, a selection shape may be expandedfrom an origination point based on a user interaction with an indicatorhandle. The indicator handle may be used by the user to manipulate theselection shape. Further, the selection shape may be contracted usingthe indicator handle in the same way as the expansion of the selectionshape.

In block 402, a selection shape 404 a may be surfaced anchored toorigination point 406. The selection shape 404 a has an initial size, anoriginal capture area, and includes multiple indicator handles, such asindicator handle 408 a and indicator handle 408 b. The initial size ofselection shape 404 a may be a default size or a size based on a userinteraction received by a content application in which the contentapplication then initiates a selection mode.

In block 410, a user may drag (415) indicator handle 408 b from aninitial position 417 to a second position 418. As the user performs thedrag gesture (415), the selection shape 404 b expands from theorigination point 406 to a second size that is larger than the initialsize. As the selection shape 404 b is expanded, the original capturearea is expanded to an expanded capture area to capture contentproximate to the original capture area. As previously discussed, theamount of expansion may be determined using a ratio based on the lengthof the user interaction.

In this case, the indicator handle 408 b moves along with the draggesture (415) and stays at the second position 418 after the draggesture (415) is performed. In some cases, the indicator handle 408 bmay return to the initial position 417 after any user interaction.

In block 420, the user may further drag (422) indicator handle 408 bfrom the second position 418 to a third position 424. As the userperforms the drag gesture (422), the selection shape 404 c (and theexpanded capture area) continues to expand from the origination point406 to a third size that is larger than the second size.

The expansion of the selection shape 404 allows single handed proximityselection of content that is out of reach of the user, thus, minimizinglarge movements (e.g., large arm movements, taking multiple steps, etc.)performed by the user for large displays.

FIGS. 5A-5F illustrate example representations of selection shapes thatmay be used to implement certain methods and services described herein.These examples are not intended to be limiting and the selection shapemay be rendered or surfaced as any suitable shape. Selection shape 505,as shown in FIG. 5A, is surfaced as a sector of a circle. Selectionshape 510, as shown in FIG. 5B, is surfaced as a rectangle. Selectionshape 515, as shown in FIG. 5C, is surfaced as a circle. Selection shape520, as shown in FIG. 5D, is surfaced as a star. An expansion orcontraction of the illustrated selection shapes may be performed byselection or time as discussed with respect to FIGS. 3 and 4.

For example, the content application may understand a capture area (suchas an original capture area or an expanded capture area) of contentbased on where the selection shape is covering and/or where a selectedzone of the selection shape covers.

A selection shape may be expanded or contracted in multiple directions.In some cases, when a content application expands or contracts theselection shape, the entire selection shape may grow or shrinkproportionately. In other cases, one side of the selection shape may beexpanded or contracted. This type of expansion may change the shape ofthe selection, for example, from a rectangle to a square or from acircle to an oval. Further, the sides of selection shape 505 may be ableto be manipulated to grow the sector of the circle into a full circle.

Referring to FIG. 5E and FIG. 5F, expansion or contraction of selectionshapes may be performed using an indicator handle. The indicator handlemay be any shape. Selection shape 525, as shown in FIG. 5E, is surfacedas a circle and includes indicator handle 527. Indicator handle 527allows for the expansion or contraction of the diameter of selectionshape 525. In some cases, the manipulation of the indicator handle 527allows for the uniform expansion or contraction of the selection shape525. In other cases, the manipulation of the indicator handle 527 allowsfor one or more sides (or segments) of the selection shape 525 to expandor contract. Further, the indicator handle 527 may be moved to adifferent location along the edge of the selection shape 525.

Selection shape 530, as shown in FIG. 5F, is surfaced as a rectangle andincludes multiple indicator handles (e.g., indicator handle 532 a andindicator handle 532 b). In some cases, the manipulation of indicatorhandle 532 a or indicator handle 532 b allows for the uniform expansionor contraction of the selection shape 530. In other cases, themanipulation of the indicator handle 532 a allows for one side of theselection shape 530 to expand or contract and the manipulation of theindicator handle 532 b allows for another side of the selection shape530 to expand or contract. Further, the indicator handle 532 a andindicator handle 532 b may be moved to a different location along theedge of the selection shape 530.

FIGS. 6A-6D illustrate example scenarios of selecting proximate content.The example scenarios of selecting proximate content may be carried outat a content creation and consumption application. A user may open auser interface 605 of a content creation and consumption application 600on their computing device (embodied, for example, as system 800described with respect to FIG. 8). The computing device can be anycomputing device such as, but not limited to, a laptop computer, adesktop computer, a tablet, a personal digital assistant, a smart phone,a smart television, a gaming console, wearable device, an interactivewhiteboard, and the like.

Referring to FIG. 6A, the user may input inked content 610 onto the userinterface 605 of the content creation and consumption application 600.In some cases, ink analysis may be performed on the inked content 610 toidentify at least one grouping of the inked content 610. In this case,the inked content 610 may include content 610 a, which is a handwritteninked word “Earth,” and content 610 b, which is a handwritten inked word“Apple.” Further, in this case, content 610 a and content 610 b are eachidentified groupings of the inked content 610.

In response to receiving a variety of user interactions with the UI 605,the content application 600 may initiate selection mode. As previouslydescribed, the user interactions with the UI 605 may be accomplished viainput mechanisms of a stylus, pen, or finger (on a touch screen or pad).For example, the user may tap a selection icon 620 in the UI 605 of thecontent application 600. In addition, or as an alternative, a user maytap and hold a point on the UI 605 of the content application.

Referring to FIG. 6B, upon receiving the user interaction with the UI605, a selection shape 630 may be displayed to the user at anorigination point 635. In this case, the selection shape 630 is a sectorof circle, however, the shape of the selection shape 630 may be anysuitable shape such as, but not limited to, the shapes shown in FIGS.5A-5F. In some cases, the shape of the selection shape may be a defaultshape. In other cases, the content application 600 may include a menudisplaying multiple different shapes available to the user as selectionshapes. The user may then select the desired shape of the selectionshape. In some cases where there are multiple shapes available to theuser, the user may change the shape of the selection shape at any time.

As shown in FIG. 6B, the selection shape 630 is surfaced at a locationanchored to and extending from origination point 635. The originationpoint 635 and the selection shape 630 may be moved to another locationof the UI 605. For example, the selection shape 630 may be moved tocover part of the content 610 b.

Referring to FIG. 6C, the user may expand the selection shape 630 by anyof the previously described methods. In this example, selection shape630 expands from the origination point 635 to select all the content610. In this illustrated scenario shown at FIGS. 6B and 6C, anywhere theselection shape is shown creates a capture area and captures the contentthat it covers. The captured content (e.g., captured content 640 a andcaptured content 640 b) can be distinguished from non-selected contentby providing an identifier for the captured content. In this case, thecaptured content is highlighted to identify the captured content asbeing selected.

Referring to FIG. 6D, in some cases, the selection shape 630 may expandfrom the origination point 635 to cover all of the content 610 while notcapturing the content 610. That is, capture zones can be displayed butnot capture the content within them until selected. The capture area canbe indicated by a shaded area. In this case, a shaded area 650 isprovided and expanded to capture content (e.g., captured content 640 aand captured content 640 b). The shaded area 650 of the selection shape630 may be expanded and contracted by any of the previously describedmethods.

FIGS. 7A-7E illustrate example scenarios of selecting proximate content.The example scenarios of selecting proximate content may be carried outat a content creation and consumption application. A user may open auser interface 705 of a content creation and consumption application 700on their computing device (embodied, for example, as system 800described with respect to FIG. 8). The computing device can be anycomputing device such as, but not limited to, a laptop computer, adesktop computer, a tablet, a personal digital assistant, a smart phone,a smart television, a gaming console, wearable device, an interactivewhiteboard, and the like.

Referring to FIG. 7A, the user may input inked content 710 onto the userinterface 705 of the content application 700. In some cases, inkanalysis may be performed on the inked content 710 to identify at leastone grouping of the inked content 710. In this example, the inkedcontent 710 includes content 710 a, which is a handwritten inked word“Earth,” and content 710 b, which is a handwritten inked word “Apple.”Further, in this case, content 710 a and content 710 b are eachidentified groupings of the inked content 710.

A user may draw a circle 715 in digital ink on the UI 705 with a stylus720. The circle 715 may be drawn at any location on the UI 705. In thisexample, the circle 715 is drawn around content 710 a.

Referring to FIG. 7B, upon receiving the drawn circle 715, the contentapplication 700 may display a selection icon 725 as a contextual menu onor near the circle 715. The selection icon 725 can ask the user if theywould like to enter selection mode. If the user does not select theselection icon 725, the circle 715 will remain digital ink. In thisillustration, the user selects (730) the selection icon 725.

Referring to FIG. 7C, upon receiving the encircling and command to enterselection mode (via user selection (730) of the selection icon 725), aselection shape 735 may be displayed (surfaced) to the user at anorigination point 737 in place of the inked circle. In this example, theselection shape 735 is a circle with multiple indicator handles 745(e.g., indicator handle 745 a, indicator handle 745 b, indicator handle745 c, and indicator handle 745 d) and the origination point 737 is thecenter of the drawn circle 715. However, the shape of the selectionshape 735 is not limited thereto. For example, any of the shapes shownin FIGS. 5A-5F may be used.

Although the selection shape 735 is surfaced where the selection shape735 is covering the content 710 a, the selection shape 735 may, in somecases initially surface in front of the content in the UI and be movedto another location of the UI 705 to capture different content. Forexample, the selection shape 735 may be moved to the content 710 b.There may be a time period that the selection shape floats and/or aselect/deselect functionality

Referring to FIG. 7D, the content 710 a becomes captured content 750 andthe user may then manipulate the captured content 750. The manipulationof the captured content 750 can include, but is not limited to, forexample, moving the captured content 750, rotating the captured content750, and scaling the captured content 750.

In this example, the captured content 750 a is moved from an initialposition 755 on the UI 760 to a second position 760 on the UI 705. Thecaptured content 750 may be moved by a user interaction with the UI 705.For example, the user may press down on a location inside or on theselection shape 735 and perform a drag gesture to the desired location.

Referring to FIG. 7E, a user may have added additional content 770, suchas a drawing of the earth, to the UI 705 after or before selectingcontent 710 a of FIG. 7C. Initially, the selection shape 735 covers onlythe captured content 750, which is the word “Earth”. The user can selectthe additional content 770 by expanding the selection shape 735 by anyof the previously described methods. In this example, the user can dragone of the indication handles 745 until the selection shape 735 is largeenough to cover both the captured content 750 and the additional content770. The additional content 770 can then be included with the capturedcontent 750.

FIG. 8 illustrates components of a computing device or system that maybe used in certain embodiments described herein. Referring to FIG. 8,system 800 may represent a computing device such as, but not limited to,a personal computer, a reader, a mobile device, a personal digitalassistant, a wearable computer, a smart phone, a tablet, a laptopcomputer (notebook or netbook), a gaming device or console, anentertainment device, a hybrid computer, a desktop computer, aninteractive whiteboard, or a smart television. Accordingly, more orfewer elements described with respect to system 800 may be incorporatedto implement a particular computing device.

System 800 includes a processing system 805 of one or more processors totransform or manipulate data according to the instructions of software810 stored on a storage system 815. Examples of hardware processors ofthe processing system 805 include general purpose central processingunits, application specific processors, and logic devices, as well asany other type of processing device, combinations, or variationsthereof. The processing system 805 may be, or is included in, asystem-on-chip (SoC) along with one or more other components such asnetwork connectivity components, sensors, video display components.

The software 810 can include an operating system and applicationprograms such as a content creation and consumption application 820.Device operating systems generally control and coordinate the functionsof the various components in the computing device, providing an easierway for applications to connect with lower level interfaces like thenetworking interface. Non-limiting examples of operating systems includeWindows® from Microsoft Corp., Apple® iOS™ from Apple, Inc., Android® OSfrom Google, Inc., and the Ubuntu variety of the Linux OS fromCanonical.

It should be noted that the operating system may be implemented bothnatively on the computing device and on software virtualization layersrunning atop the native device operating system (OS). Virtualized OSlayers, while not depicted in FIG. 8, can be thought of as additional,nested groupings within the operating system space, each containing anOS, application programs, and APIs.

Storage system 815 may comprise any computer readable storage mediareadable by the processing system 805 and capable of storing software810 including the content creation and consumption application 820.

Storage system 815 may include volatile and nonvolatile memory,removable and non-removable media implemented in any method ortechnology for storage of information, such as computer readableinstructions, data structures, program modules, or other data. Examplesof storage media of storage system 815 include random access memory,read only memory, magnetic disks, optical disks, CDs, DVDs, flashmemory, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or any other suitable storage media. Inno case is the storage medium a transitory propagated signal or carrierwave.

Storage system 815 may be implemented as a single storage device but mayalso be implemented across multiple storage devices or sub-systemsco-located or distributed relative to each other. Storage system 815 mayinclude additional elements, such as a controller, capable ofcommunicating with processing system 805.

In general, software may, when loaded into processing system 805 andexecuted, transform computing system 800 overall from a general-purposecomputing system into a special-purpose computing system customized toretrieve and process the information for facilitating content authoringas described herein for each implementation. Indeed, encoding softwareon storage system 815 may transform the physical structure of storagesystem 815. The specific transformation of the physical structure maydepend on various factors in different implementations of thisdescription. Examples of such factors may include, but are not limitedto the technology used to implement the storage media of storage system815 and whether the computer-storage media are characterized as primaryor secondary storage.

The system can further include a user interface system 830, which mayinclude input/output (I/O) devices and components that enablecommunication between a user and the system 800. User interface system830 can include input devices such as a mouse, track pad, keyboard, atouch device for receiving a touch gesture from a user, a motion inputdevice for detecting non-touch gestures and other motions by a user, amicrophone for detecting speech, and other types of input devices andtheir associated processing elements capable of receiving user input.

The user interface system 830 may also include output devices such asdisplay screen(s), speakers, haptic devices for tactile feedback, andother types of output devices. In certain cases, the input and outputdevices may be combined in a single device, such as a touchscreendisplay which both depicts images and receives touch gesture input fromthe user. A touchscreen (which may be associated with or form part ofthe display) is an input device configured to detect the presence andlocation of a touch. The touchscreen may be a resistive touchscreen, acapacitive touchscreen, a surface acoustic wave touchscreen, an infraredtouchscreen, an optical imaging touchscreen, a dispersive signaltouchscreen, an acoustic pulse recognition touchscreen, or may utilizeany other touchscreen technology. In some embodiments, the touchscreenis incorporated on top of a display as a transparent layer to enable auser to use one or more touches to interact with objects or otherinformation presented on the display.

Visual output may be depicted on the display in myriad ways, presentinggraphical user interface elements, text, images, video, notifications,virtual buttons, virtual keyboards, or any other type of informationcapable of being depicted in visual form.

The user interface system 830 may also include user interface softwareand associated software (e.g., for graphics chips and input devices)executed by the OS in support of the various user input and outputdevices. The associated software assists the OS in communicating userinterface hardware events to application programs using definedmechanisms. The user interface system 830 including user interfacesoftware may support a graphical user interface, a natural userinterface, or any other type of user interface. For example, theinterfaces for the selection of proximate content described herein maybe presented through user interface system 830.

Communications interface 840 may include communications connections anddevices that allow for communication with other computing systems overone or more communication networks (not shown). Examples of connectionsand devices that together allow for inter-system communication mayinclude network interface cards, antennas, power amplifiers, RFcircuitry, transceivers, and other communication circuitry. Theconnections and devices may communicate over communication media (suchas metal, glass, air, or any other suitable communication media) toexchange communications with other computing systems or networks ofsystems. Transmissions to and from the communications interface arecontrolled by the OS, which informs applications of communicationsevents when necessary.

What is claimed is:
 1. A method for selecting proximate contentdisplayed by a computing device, the method comprising: initiating aselection mode; identifying an origination point, wherein theorigination point is a location on a user interface where atwo-dimensional selection shape is to be surfaced, anchored to, and havea capture area expanded from; in response to identifying the originationpoint, surfacing the selection shape anchored to the origination point,wherein the selection shape forms an original capture area and capturescontent within the original capture area for further action; and aftersurfacing the selection shape, receiving indicia of expansion, and basedon the indicia of expansion, expanding the selection shape from itsoriginal capture area to an expanded capture area to capture contentproximate the original capture area.
 2. The method of claim 1, whereinthe selection mode is initiated in response to receiving a command toenter the selection mode.
 3. The method of claim 1, wherein theselection mode is initiated in response to receiving a defined gesture.4. The method of claim 3, wherein the defined gesture comprises anencircling and context menu selection or a tap and hold for a period oftime.
 5. The method of claim 1, wherein the indicia of expansioncomprise a time of hold, a location of a tap, or a direction of a swipe.6. The method of claim 1, further comprising receiving indicia ofcontraction, and based on the indicia of contraction, contracting theexpanded capture area of the selection shape to remove content from thecaptured content.
 7. The method of claim 1, further comprising providingan identifier for the captured content, wherein the identifier comprisesa modification to the captured content, the modification being ahighlight or a change of a property of the captured content.
 8. Themethod of claim 1, further comprising manipulating the captured contentby one or more of moving the captured content, rotating the capturedcontent, and scaling the captured content.
 9. A system, comprising: auser input interface; a processing system; one or more storage media;and an application stored on at least one of the one or more storagemedia that, when executed by the processing system, direct theprocessing system to: initiate a selection mode; identify an originationpoint, wherein the origination point is a location on a user interfacewhere a two-dimensional selection shape is to be surfaced and anchoredto; surface the selection shape anchored to the origination point,wherein the selection shape comprises capture zones; and after surfacingthe selection shape, receive indicia of expansion selecting one of thecapture zones of the selection shape, and based on the selected one ofthe capture zones, capture content within a capture area for furtheraction, the capture area comprising all capture zones from theorigination point up to and including the selected one of the capturezones.
 10. The system of claim 9, wherein the selection mode isinitiated in response to receiving a command to enter the selectionmode.
 11. The system of claim 9, wherein the selection mode is initiatedin response to receiving a defined gesture.
 12. The system of claim 11,wherein the defined gesture comprises an encircling and context menuselection or a tap and hold for a period of time.
 13. The system ofclaim 9, wherein the indicia of expansion comprise a time of hold, alocation of a tap, or a direction of a swipe.
 14. The system of claim 9,wherein the application further directs the processing system to:receive indicia of contraction, and based on the indicia of contraction,contracting the expanded capture area of the selection shape to removecontent from the captured content.
 15. The system of claim 9, whereinthe application further directs the processing system to: manipulate thecaptured content by one or more of moving the captured content, rotatingthe captured content, and scaling the captured content.
 16. One or morecomputer readable storage media having instructions for an applicationstored thereon what when executed by a processing system, direct theprocessing system to at least: initiate a selection mode; identify anorigination point, wherein the origination point is a location on a userinterface where a two-dimensional selection shape is to be surfaced andanchored to; surface the selection shape anchored to the originationpoint, wherein the selection shape comprises capture zones; and aftersurfacing the selection shape, receive indicia of expansion selectingone of the capture zones of the selection shape, and based on theselected one of the capture zones, capture content within a capture areafor further action, the capture area comprising all capture zones fromthe origination point up to and including the selected one of thecapture zones.
 17. The media of claim 16, wherein the selection mode isinitiated in response to receiving a command to enter the selection modeor a defined gesture, wherein the defined gesture comprises anencircling and context menu selection or a tap and hold for a period oftime.
 18. The media of claim 16, wherein the indicia of expansioncomprise a time of hold, a location of a tap, or a direction of a swipe.19. The media of claim 16, wherein the instructions further direct theprocessing system to: receive indicia of contraction, and based on theindicia of contraction, contracting the expanded capture area ofselection shape to remove content from the captured content.
 20. Themedia of claim 16, wherein the instructions further direct theprocessing system to: manipulate the captured content by one or more ofmoving the captured content, rotating the captured content, and scalingthe captured content.